Linking and Loading in a Persistent Dsm Operating System
نویسندگان
چکیده
Our native Java compiler directly generates runtime structures in a persistent Distributed Shared Memory (DSM). The compiler has been used to build a general purpose PC Operating System (OS) on top of a persistent DSM memory. The persistent DSM operating environment lends itself naturally to an integration of symbol tables, class descriptors and naming during Java program compilation and execution. The linking and loading process is streamlined and the persistent storage property makes a traditional loader redundant. After a brief overview of the Plurix OS we discuss traditional linking strategies and present extended linking perspectives in the persistent Plurix DSM. This includes a novel immediate linking scheme offering the flexibility of dynamic binding while detecting errors at linking time. The remaining task of class initialization is performed only once by the Plurix Java compiler. To deal with the semantics of distributed Java static class variables we propose extended initialization rules together with a more flexible type checking scheme.
منابع مشابه
Bootstrapping and Startup of an object-oriented Operating System
The Plurix project implements an object-oriented Operating System (OS) for PC clusters. Network communication is implemented via the well-known Distributed Shared Memory (DSM) paradigm using restartable transactions and an optimistic synchronization scheme to implement memory consistency. The total OS (including kernel and drivers) reside in the persistent DSM – there is no distinction between ...
متن کاملLinking Programs in a Single Address Space
Linking and loading are the final steps in preparing a program for execution. This paper assesses issues concerning dynamic and static linking in traditional as well as single-address-space operating systems (SASOS). Related loading issues are also addressed. We present the dynamic linking model implemented in the Mungi SASOS and discuss its strengths and limitations. Benchmarking shows that dy...
متن کاملDynamic Loading in an Application Specific Embedded Operating System
Traditionally, configuration of operating systems is done statically at compileor link-time, but recently dynamic runtime configuration has become possible. Embedded systems however have constraints, such as limited memory and real-time requirements, that prevent many dynamically configurable operating systems from being used in an embedded system. Dynamic configuration has associated limitatio...
متن کاملFast and Flexible Shared Libraries
Existing implementations of shared libraries sacriice speed (in loading, linking, and executed code), for essential exibility (in symbol binding, address space use, and interface evolution). Modern operating systems provide the primitives needed to make the dynamic linker and loader a persistent server which lives across program invocations. This can provide speed without sacriicing exibility. ...
متن کاملImplementation Aspects of a Persistent DSM Operating System in Java
The Java trademark encompasses the Java Virtual Machine (JVM), the Java language itself, and a large continuously growing class library. Beyond the development of applets in the context of the World Wide Web, more and more people use Java for large scaled standalone applications. This user group points out the performance disadvantage of the Java environment in comparison to sophisticated C/C++...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2000